蠻力攻擊是一種用于解碼敏感數據的試錯法。蠻力攻擊最常見的應用是破解密碼和破解加密密鑰(繼續閱讀以了解有關加密密鑰的更多信息)。暴力攻擊的其他常見目標是 API 密鑰和 SSH 登錄。暴力密碼攻擊通常由針對網站登錄頁面的腳本或機器人執行。
蠻力攻擊與其他破解方法的區別在于,蠻力攻擊不采用智力策略。他們只是嘗試使用不同的字符組合,直到找到正確的組合。這有點像小偷試圖通過嘗試所有可能的數字組合來闖入組合保險箱,直到保險箱打開。
蠻力攻擊的優點和缺點是什么?
蠻力攻擊的最大優點是它們執行起來相對簡單,并且只要有足夠的時間并且缺乏針對目標的緩解策略,它們總是可以工作的。每個基于密碼的系統和加密密鑰都可以使用暴力攻擊來破解。事實上,暴力破解系統所需的時間是衡量該系統安全級別的有用指標。
另一方面,蠻力攻擊非常緩慢,因為它們可能必須遍歷所有可能的角色組合才能達到目標。隨著目標字符串中字符數的增加(字符串只是字符的組合),這種遲緩會更加復雜。例如,四字符密碼的暴力破解時間明顯長于三字符密碼,五字符密碼的時間明顯長于四字符密碼。一旦字符數超過某個點,強制使用適當的隨機密碼就變得不切實際了。
如果目標字符串足夠長,那么暴力攻擊者可能需要數天、數月甚至數年才能解碼正確隨機化的密碼。由于當前需要更長的密碼和加密密鑰的趨勢,蠻力攻擊要困難得多。當使用良好的密碼和加密時,攻擊者通常會嘗試其他代碼破解方法,例如社會工程或路徑攻擊。
如何防范蠻力攻擊
管理授權系統的開發人員可以采取措施,例如鎖定導致過多登錄失敗的 IP 地址,并在他們的密碼檢查軟件中加入延遲。即使是幾秒鐘的延遲也會大大削弱暴力攻擊的有效性。
Web 服務的用戶可以通過選擇更長、更復雜的密碼來降低他們對暴力攻擊的脆弱性。還建議啟用雙因素身份驗證并為每個服務使用唯一密碼。如果攻擊者能夠針對一項服務暴力破解用戶密碼,那么該攻擊者可能會嘗試在許多其他流行服務上重復使用相同的登錄名和密碼。這稱為憑證填充。
用戶還應避免使用任何未使用強加密密鑰保護其數據的 Web 服務輸入密碼或個人信息,例如信用卡號或銀行信息。
什么是加密密鑰?
加密密鑰是隨機生成的比特串,用于對數據進行加擾和解密。一旦數據被加擾,它就會顯示為一串隨機的、混亂的字符,直到使用正確的加密密鑰進行解擾。就像密碼一樣,加密密鑰可以使用暴力攻擊來破解,但是今天使用的加密密鑰需要很長時間才能使用現代計算機破解,以至于它們被認為是牢不可破的。
128 位加密和 256 位加密有什么區別?
較長的加密密鑰比較短的加密密鑰更安全。例如,在 128 位加密密鑰中,暴力攻擊者必須嘗試 2128 種可能的組合。對于256位加密,攻擊者必須嘗試2256種不同的組合,這需要比128位密鑰多 2128 倍的計算能力來破解!(2 128 = 340,282,366,920,938,463,463,374,607,431,768,211,456 種可能的組合)。
為了讓您了解這些數字的含義,一臺可以每秒檢查數萬億個組合的強大計算機仍然需要十億分之一年才能破解 256 位加密密鑰(一個十億分之一是一個后跟 96 個零)。
由于高位加密密鑰幾乎不受當前暴力攻擊的影響,因此建議所有收集用戶信息的 Web 服務都使用 256 位加密密鑰對其數據和通信進行加密。使用一流的TLS 加密來防止暴力攻擊,并致力于針對未來的量子計算。